The field of the invention is industrial control systems, such as numerical controls, programmable controllers and process controls which are connected to numerous sensing devices and operating devices in the factory environment.
In numerical controls such as those disclosed in U.S. Pat. Nos. 4,038,533 and 4,228,495 and in programmable controllers such as those disclosed in U.S. Pat. Nos. 4,266,281 and 3,982,230, a processor operates to input data from sensors, perform calculations and output data to operating devices. While some input/output (I/O) data may be directly operated upon by the processor, it is common practice to operate on I/O data contained in an I/O image table which is created in the processor's memory. In such systems an I/O scan is periodically performed to update the state of the input image table with the current status of the sensing devices connected to the machine, and to write the output image table to corresponding operating devices connected to the machine.
There are numerous methods presently used to perform the periodic I/O scan. In U.S. Pat. No. 4,038,533 the numerical control processor is periodically interrupted from its other functions to perform the I/O scan itself. In U.S. Pat. No. 4,228,495 a separate "programmable interface" processor which couples to the main processor performs a number of I/O functions, including the periodic I/O scan. And finally, in U.S. Pat. No. 3,942,158 a separate input/output "scanner" circuit is provided to perform the I/O scan on a continuous basis by periodically "stealing" access time to the I/O image table from the main processor.
There are also a variety of architectures used for the I/O interface circuitry. The most common structures employ a set of I/O modules which are mounted in an I/O rack such as those disclosed in U.S. Pat. Nos. 3,992,654; 4,151,580 and 4,152,750. The I/O rack may also house the processor as in U.S. Pat. Nos. 4,293,924 and 4,263,647, or the I/O rack may be physically separate from the processor as in U.S. Pat. Nos. 3,997,879, 3,982,230 and 4,250,563. When the I/O modules are loated in the same rack with the processor, they usually share a common backplane bus structure in which I/O data is conveyed in parallel. On the other hand, when the I/O racks are physically separate from the processor, the usual practice is to convey I/O data serially to reduce the cost of the electrical interconnection. Such serial communications usually involve a complex protocol that reduces the efficiency of the I/O data link and increases the cost.